Course AI Ethics & Use Policy

Motto: Do not give up learning

You may use AI to accelerate understanding and craftsmanship, not to outsource the learning itself.

1) Purpose & Scope

This guide sets expectations for using AI tools (e.g., code assistants, chatbots, copilots) in this course. It applies to all homework, projects, in-class activities, and communications related to course work.


2) Core Principles

  1. Learn First: Try to understand before automating. If you cannot explain or reproduce the work, you haven’t learned it.

  2. Responsibility: You (not the AI) are accountable for correctness, style, performance, and ethics of your submissions.

  3. Transparency & Integrity: Always disclose your AI use (tools, prompts, and how you verified results). Do not misrepresent AI-generated work as solely your own;

  4. Verification: Treat AI output as hypotheses — test, inspect, and cite sources where relevant.

  5. Privacy & Safety: Never share secrets, credentials, personal data, or proprietary data with AI tools.

  6. Licensing & Attribution: Respect IP and licenses for any external code, assets, or text. Cite external sources when applicable.


3) What’s Allowed (with conditions)

🟢 Green — Allowed & Encouraged (with transparency):

  • Brainstorming ideas, clarifying requirements, and outlining solution approaches.

  • Generating or refining tests (unit/property), edge-case suggestions, and test data.

  • Debugging assistance: explaining error messages, proposing minimal fixes you then review.

  • Refactoring for readability/performance; adding comments/docstrings and example usage.

  • Translating your own text or improving grammar/format in reports/README.

🟡 Yellow — Allowed only if you verify and understand it (with disclosure):

  • Drafting small code snippets or boilerplate that you fully review, test, and can explain.

  • Summarising documentation/APIs you also read, to speed up navigation.

  • Producing diagrams, pseudocode, or step-by-step plans that you execute and validate.

🔴 Red — Prohibited:

  • Submitting AI-generated code/content that you cannot explain line by line on request.

  • Using AI to complete an entire assignment end-to-end with minimal human input.

  • Feeding private data, credentials, or any non-public project information into AI tools.

  • Lifting code/text from the internet or AI without checking license and giving attribution.

  • Circumventing assignment constraints (e.g., forbidden libraries/techniques) via AI.


4) Documentation & Disclosure Requirements

IoT Challenge submissions that used AI must include an AI-Use Statement in the README (or report) and maintain a short Prompt Journal.

AI-Use Statement (template):

- Tools: <tool name(s) and model if known>, used on .
- Scope: (e.g., brainstormed edge cases; generated initial tests; suggested refactor for function X.)
- Verification method: (manual tests passed, manual review steps, external sources consulted.)
- Attribution: (links to any external code/snippets with license notes, if applicable.)
- Reflection: (what I learned; what I changed vs. the AI’s suggestion.)

Prompt Journal (minimum):

  • Paste your top 1–3 prompts (or paraphrases) and a 1–2 sentence note of what changed.

  • Keep sensitive data out. If a prompt contains project-specific details, paraphrase.


5) Verification Checklist (pre-submission)

  • [ ] I can explain all submitted code and choices in plain language.

  • [ ] Tests: all pass locally; I added at least one self-authored test per milestone.

  • [ ] I reviewed complexity, edge cases, and failure modes; I can justify trade-offs.

  • [ ] AI-Use Statement and Prompt Journal are included.

  • [ ] No secrets/PII were shared with any AI tool.

  • [ ] Licensing/attribution for any external snippet is correct.


6) Collaboration & Authorship

  • You may discuss concepts with classmates, but final code and report must be your own unless the task explicitly allows group work.

  • In group tasks, document each member’s contribution and any AI assistance used by that member.

  • You may be invited to a short oral check to discuss your submission.

  • You may be asked to explain aspects or your code or defend your design choices during the review process.


7) Data Privacy & Security

  • Do not paste secrets (API keys, passwords), personal data, or proprietary datasets into AI systems.

  • Prefer local/offline or institution-approved tools for sensitive workflows.

  • Use synthetic or redacted examples when seeking help.


8) Intellectual Property & Licensing

  • Treat AI output like any third-party source: you must verify originality and licensing.

  • If you adopt external code/ideas, cite source and license; keep usage within license terms.


9) Evaluation & Consequences

  • Class assignments submissions may be checked via tests, code review, and tooling.

  • Additionally, the IOT Challenge may include an oral check to verify understanding.

  • If you cannot explain your code, we reserve the right to: reduce/void assignment grading, require resubmission, or initiate academic-integrity procedures per university policy.


10) Examples

Good use:

  • Ask an LLM to propose edge cases, generate initial pytest cases; you implement code; you add one more test you designed; AI-Use Statement explains how you verified logic.

Borderline but acceptable (with care):

  • Ask for a starter function to parse CSV → you refactor thoroughly, add docstrings, and design extra tests; you can explain decisions and complexity.

Not acceptable:

  • Paste the entire assignment and submit the first AI answer with minimal edits; cannot explain key lines or fix defects during review.


11) In-Class AI Use

  • For class assignments, timed quizzes/exams: AI use is forbidden unless explicitly stated.

  • AI is allowed for brainstorming, code sketching, and debugging only when explicitly permitted by the instructor.


12) Accessibility & Language Support

  • Using AI to improve grammar/clarity in your own writing is encouraged, but text substance must remain yours.

  • If you rely on translation, note this in your AI-Use Statement.